//包装函数
module.exports = function (grunt) {
    //任务配置，所有插件的配置信息
    grunt.initConfig({
        //获取packege.json的信息
        pkg: grunt
            .file
            .readJSON('package.json'),
            
        // watch将监控src文件夹下所有js文件和css文件的变化，一旦变化，则立即执行jshint和uglify两个插件功能。
        // 运行grunt命令，控制台提示watch已经开始监听。此时要想停止，按ctrl + c即可 检测改变，自动跑less任务
        watch: {
            configFiles: {
                files: ['Gruntfile.js'],
                options: {
                    reload: true,
                    tasks: ['default']
                }
            },
            less: {
                files: 'src/styles/**/*.less',
                options: {
                    livereload: true,
                    tasks: ['default']
                }
            }
        },
        // 通过less编译成css文件
        less: {
            development: {
                files: {
                    'src/styles/css/style.css': 'src/styles/less/style.less'
                }
            }
        }
    });
    //实现自动化
    grunt.loadNpmTasks('grunt-contrib-watch');
    //less转换成css
    grunt.loadNpmTasks('grunt-contrib-less');
    //告诉grunt当我们在终端输入grunt时需要做些什么（注意先后顺序)
    grunt.registerTask('default', ['watch','less']);

}